package com.yonyou.pmclouds.workquality.service.rmiitf;

import com.yonyou.pmclouds.basecom.exception.BusinessException;
import com.yonyou.pmclouds.workquality.entity.WorkqualityVO;

import java.util.List;

public interface WorkqualityService {

    WorkqualityVO insert(WorkqualityVO workqualityVO) throws BusinessException;

    WorkqualityVO update(WorkqualityVO workqualityVO) throws BusinessException;

    void delete(WorkqualityVO workqualityVO) throws BusinessException;

    WorkqualityVO[] getPreviewWorkqualitys(String pkType) throws BusinessException;

    String[] insertPresetWorkqualitys(List<WorkqualityVO> workqualityList) throws BusinessException;

    /**
     * 启用
     *
     * @param workqualityVO
     * @return
     * @throws BusinessException
     */
    WorkqualityVO enable(WorkqualityVO workqualityVO) throws BusinessException;

    /**
     * 停用
     *
     * @param workqualityVO
     * @return
     * @throws BusinessException
     */
    WorkqualityVO disable(WorkqualityVO workqualityVO) throws BusinessException;

    /**
     * 插入示例图片
     *
     * @param workqualityVO
     * @return
     * @throws BusinessException
     */
    WorkqualityVO insertExamplePics(WorkqualityVO workqualityVO) throws BusinessException;

    /**
     * 将原检查类型的检查标准，复制一套到目的类型，项目需求使用
     * @param tenantId 租户ID
     * @param srcCheckType 原检查类型
     * @param toCheckType 目的检查类型
     * @return 结果
     */
    String updateCopyWorkQuality(String tenantId, int srcCheckType, int toCheckType) throws BusinessException;

}
